
 1000  *SAVE S.SPLIT
 1010  *--------------------------------
 1020  *      & SPLIT,A$,B$,W
 1030  *
 1040  *      A$ -- SOURCE STRING
 1050  *      W  -- MAXIMUM WIDTH OF SPLIT
 1060  *
 1070  *      B$ -- LEFT W CHARS OF A$
 1080  *      A$ -- REST OF A$
 1090  *
 1100  *--------------------------------
 1110         .OR $300
 1120         .TF B.SPLIT
 1130  *--------------------------------
 1140  LINNUM     .EQ $50,51
 1150  DPTRA      .EQ $06,07
 1160  DPTRB      .EQ $08,09
 1170  SPTRA      .EQ $FE,FF
 1180  *--------------------------------
 1190  AS.CHKCOM  .EQ $DEBE
 1200  AS.PTRGET  .EQ $DFE3
 1210  AS.GETADR  .EQ $E752
 1220  AS.FRMNUM  .EQ $DD67
 1230  *--------------------------------
 1240  SPLIT  JSR AS.CHKCOM     GET COMMA
 1250         JSR AS.PTRGET     GET SOURCE STRING
 1260         STA DPTRA
 1270         STY DPTRA+1
 1280         JSR AS.CHKCOM     ANOTHER COMMA
 1290         JSR AS.PTRGET     GET TARGET STRING
 1300         STA DPTRB
 1310         STY DPTRB+1
 1320         JSR AS.CHKCOM     ANOTHER COMMA
 1330         JSR AS.FRMNUM
 1340         JSR AS.GETADR     GET MAXIMUM WIDTH
 1350         LDY #2
 1360         LDA (DPTRA),Y
 1370         STA SPTRA+1
 1380         STA (DPTRB),Y
 1390         DEY
 1400         LDA (DPTRA),Y
 1410         STA SPTRA
 1420         STA (DPTRB),Y
 1430         DEY
 1440         LDA LINNUM
 1450         CMP (DPTRA),Y
 1460         BCC .1
 1470         LDA (DPTRA),Y     A$ SHORTER THAN OR SAME AS W
 1480         STA (DPTRB),Y
 1490         LDA #0
 1500         STA (DPTRA),Y
 1510         RTS
 1520  *--------------------------------
 1530  .1     TAY
 1540  .2     LDA (SPTRA),Y     LOOK AT SPLIT BOUNDARY
 1550         CMP #$20          FOR A BLANK
 1560         BEQ .3            FOUND ONE
 1570         DEY
 1580         BNE .2            BACK UP THE SPLIT
 1590  *---NO BLANK IN W CHARS----------
 1600         LDA LINNUM
 1610         BNE .4       ...ALWAYS
 1620  *--------------------------------
 1630  .3     TYA
 1640         INY          SKIP OVER BLANK
 1650         STY LINNUM
 1660  .4     LDY #0       LENGTH OF B$
 1670         STA (DPTRB),Y
 1680         SEC
 1690         LDA (DPTRA),Y     LENGTH OF A$
 1700         SBC LINNUM
 1710         STA (DPTRA),Y
 1720         INY
 1730         CLC
 1740         LDA (DPTRA),Y
 1750         ADC LINNUM
 1760         STA (DPTRA),Y
 1770         INY
 1780         LDA (DPTRA),Y
 1790         ADC #0
 1800         STA (DPTRA),Y
 1810         RTS
 1820  *--------------------------------

